package comandos;

import java.util.ArrayList;

import model.Usuario;
import protocol.MensajeComando;
import server.ClienteHilo;
import server.dao.UsuarioDAO;

public class BuscarUsuario implements ComandoServidor
{
	public void ejecutar (ClienteHilo cliente)
	{

			try
			{
				UsuarioDAO busqueda = new UsuarioDAO();
				Usuario u = (Usuario) cliente.getInput().readObject();
				System.out.println(cliente.getUsuario().getNick() + " esta buscando amigos");
				
				ArrayList<Usuario> encontrados  = busqueda.buscar(u.getNombre(), "", u.getNick(),cliente.getUsuario());
				encontrados.remove(cliente.getUsuario());
				
				//Le envio al cliente un mensaje indicando que se va enviar la lista de usuarios encontrados
				cliente.getOutput().writeObject(new MensajeComando("buscar_usuario",0));
				cliente.getOutput().flush();
				
				//Le envio la lista de amigos
				cliente.getOutput().writeObject(encontrados);
				cliente.getOutput().flush();			
				
			}catch (Exception e){
				e.printStackTrace();
				System.out.println("Problema al ejecutar el comando");
			}		

	}
	
}
